﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Linq.Expressions;
using System.Data;
using System.Data.Objects;
using ICDA.DataModels.ICDA;

namespace ICDA.DataModels.ICDA
{
    public interface IRepository
    {
        IObjectSet<UserTable> users { get; }

        IObjectSet<ActivityTable> activity { get; }

        void Save<TModel>(TModel data);

        void Save<TModel>(List<TModel> data);

        void Delete<TModel>(TModel data);

        ObjectQuery<TModel> Select<TModel>(string query, params ObjectParameter[] parameters);

        bool SaveChanges();

    }
}
